home *** CD-ROM | disk | FTP | other *** search
-
-
-
- DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS)))) DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS))))
-
-
-
- NNNNAAAAMMMMEEEE
- DLAED3 - find the roots of the secular equation, as defined by the values
- in D, W, and RHO, between 1 and K
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- SUBROUTINE DLAED3( K, N, N1, D, Q, LDQ, RHO, DLAMDA, Q2, INDX, CTOT, W,
- S, INFO )
-
- INTEGER INFO, K, LDQ, N, N1
-
- DOUBLE PRECISION RHO
-
- INTEGER CTOT( * ), INDX( * )
-
- DOUBLE PRECISION D( * ), DLAMDA( * ), Q( LDQ, * ), Q2( * ),
- S( * ), W( * )
-
- IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
- These routines are part of the SCSL Scientific Library and can be loaded
- using either the -lscs or the -lscs_mp option. The -lscs_mp option
- directs the linker to use the multi-processor version of the library.
-
- When linking to SCSL with -lscs or -lscs_mp, the default integer size is
- 4 bytes (32 bits). Another version of SCSL is available in which integers
- are 8 bytes (64 bits). This version allows the user access to larger
- memory sizes and helps when porting legacy Cray codes. It can be loaded
- by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
- only one of the two versions; 4-byte integer and 8-byte integer library
- calls cannot be mixed.
-
- PPPPUUUURRRRPPPPOOOOSSSSEEEE
- DLAED3 finds the roots of the secular equation, as defined by the values
- in D, W, and RHO, between 1 and K. It makes the appropriate calls to
- DLAED4 and then updates the eigenvectors by multiplying the matrix of
- eigenvectors of the pair of eigensystems being combined by the matrix of
- eigenvectors of the K-by-K system which is solved here.
-
- This code makes very mild assumptions about floating point arithmetic. It
- will work on machines with a guard digit in add/subtract, or on those
- binary machines without guard digits which subtract like the Cray X-MP,
- Cray Y-MP, Cray C-90, or Cray-2. It could conceivably fail on
- hexadecimal or decimal machines without guard digits, but we know of
- none.
-
-
- AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
- K (input) INTEGER
- The number of terms in the rational function to be solved by
- DLAED4. K >= 0.
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS)))) DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS))))
-
-
-
- N (input) INTEGER
- The number of rows and columns in the Q matrix. N >= K
- (deflation may result in N>K).
-
- N1 (input) INTEGER
- The location of the last eigenvalue in the leading submatrix.
- min(1,N) <= N1 <= N/2.
-
- D (output) DOUBLE PRECISION array, dimension (N)
- D(I) contains the updated eigenvalues for 1 <= I <= K.
-
- Q (output) DOUBLE PRECISION array, dimension (LDQ,N)
- Initially the first K columns are used as workspace. On output
- the columns 1 to K contain the updated eigenvectors.
-
- LDQ (input) INTEGER
- The leading dimension of the array Q. LDQ >= max(1,N).
-
- RHO (input) DOUBLE PRECISION
- The value of the parameter in the rank one update equation. RHO
- >= 0 required.
-
- DLAMDA (input/output) DOUBLE PRECISION array, dimension (K)
- The first K elements of this array contain the old roots of the
- deflated updating problem. These are the poles of the secular
- equation. May be changed on output by having lowest order bit set
- to zero on Cray X-MP, Cray Y-MP, Cray-2, or Cray C-90, as
- described above.
-
- Q2 (input) DOUBLE PRECISION array, dimension (LDQ2, N)
- The first K columns of this matrix contain the non-deflated
- eigenvectors for the split problem.
-
- INDX (input) INTEGER array, dimension (N)
- The permutation used to arrange the columns of the deflated Q
- matrix into three groups (see DLAED2). The rows of the
- eigenvectors found by DLAED4 must be likewise permuted before the
- matrix multiply can take place.
-
- CTOT (input) INTEGER array, dimension (4)
- A count of the total number of the various types of columns in Q,
- as described in INDX. The fourth column type is any column which
- has been deflated.
-
- W (input/output) DOUBLE PRECISION array, dimension (K)
- The first K elements of this array contain the components of the
- deflation-adjusted updating vector. Destroyed on output.
-
- S (workspace) DOUBLE PRECISION array, dimension (N1 + 1)*K
- Will contain the eigenvectors of the repaired matrix which will
- be multiplied by the previously accumulated eigenvectors to
- update the system.
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS)))) DDDDLLLLAAAAEEEEDDDD3333((((3333SSSS))))
-
-
-
- LDS (input) INTEGER
- The leading dimension of S. LDS >= max(1,K).
-
- INFO (output) INTEGER
- = 0: successful exit.
- < 0: if INFO = -i, the i-th argument had an illegal value.
- > 0: if INFO = 1, an eigenvalue did not converge
-
- FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
- Based on contributions by
- Jeff Rutter, Computer Science Division, University of California
- at Berkeley, USA
- Modified by Francoise Tisseur, University of Tennessee.
-
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- INTRO_LAPACK(3S), INTRO_SCSL(3S)
-
- This man page is available only online.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-